Attempting to diagnose a solution to a problem in a complex apparatus, such as an airplane, can be very error prone and time consuming. Traditionally a solution is found by searching through diagnostic manuals provided by the manufacturer. Complex apparatus, however, generally have components made by more than one manufacturer. Each component may vary in construction and functionality as the manufacturer often provides newer versions over time. The complexity of the apparatus combined with the variety of possible components it contains, often requires a significant amount of time to solve the current problem. Further, the technician attempting to solve the problem has only the diagnostic manuals and his own experience.
In an attempt to reduce the time required to find a solution, as well as to improve the accuracy of the solution found, numerous computer-based troubleshooting systems have been developed. One such solution has been to implement expert systems. Expert systems are an attempt to embody the knowledge of an expert into a computer. Such systems typically make use of a set of rules to determine what action to take next. The difficulty with rule based systems is that they do not lend themselves well to the addition of new rules as the systems they are meant to diagnose become more complex. Further, the typical expert system is stymied if the user is unable to provide the information needed by the program. To overcome these shortcomings a new knowledge-based paradigm known as case-based reasoning was developed. One such case-based reasoning system, described in the applicant's U.S. patent application Ser. No. 08/835,558, filed Apr. 8, 1997, now U.S. Pat. No. 5,822,743, comprises a database of solved cases and a reasoning engine to extract relevant cases from the database. One of the key advantages of case-based reasoning systems is that they provide a repository of knowledge that has been distilled from historical records or occurrences on how to solve problems, which is far greater than that which could be expected to reside in an individual technician or even several technicians who work together.
As the database of solved cases in a case-based reasoning system increases in size, the time required to locate and extract cases relevant to the current problem increases as well. The database typically contains all cases for all configurations of apparatus, including cases that are not relevant to the configuration of the known piece of apparatus having the current problem. The user may not have enough knowledge to determine which components make up the piece of apparatus having the problem and thus enter information for components that are not within the apparatus. Since case-based reasoning systems select the relevant solved cases from the information entered by the user, it is quite possible to present some cases that are not relevant to the apparatus in question. Allowing the user to enter information on non-relevant components and then providing the user with irrelevant solution cases furthers the possibility of diverging from the correct solution.
There is accordingly a need for an enhancement to a case-based reasoning system which reduces the time required to select relevant cases and which improves the accuracy of the case selection process, thus providing the user with potential solution cases that apply only to the problem at hand.